#pragma once

#include <vector>
#include <deque>
#include <iostream>
#include <fstream>
#include <SFML\Graphics.hpp>
#include <SFML\System.hpp>

using namespace std;

struct NodeInfo{
	int n;
	unsigned char info;
	NodeInfo(int node,unsigned char i):info(i),n(node)
	{};
};

class NNetwork
{
private:
	int size;
	deque<NodeInfo> * nodeStack;
	void init();
	bool ifloops[256];
public:
	int pos;
	int iffy;
	unsigned char * data;
	void execute(int n,unsigned char info);
	void pushToStack(int n,unsigned char info);
	void run();
	NNetwork(int s);
	~NNetwork(void);
};

